/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.refund.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 客退单Entity
 * @author alex
 * @version 2017-05-04
 */
public class RefundHeader extends DataEntity<RefundHeader> {
	
	private static final long serialVersionUID = 1L;
	private String refundNo;		// 客退单号
	private String customerAccount;		// 下单账号
	private String customerName;		// 客户名称
	private String customerNo;		// 顾客编号
	private String backorderType;		// 客退类型
	private String orderId;		// 原订单ID
	private String orderNo;		// 原订单号
	private String logisticNo;		// 运单号
	private String logisticCode;		// logistic_code
	private String logisticCompany;		// 物流公司
	private String total;		// 总件数
	private String returnCause;		// 退货原因
	private String backName;		// 退件姓名
	private String backPhone;		// 退件电话
	private Date arrivalDate;		// 实际到货时间
	private String status;		// 状态
	private String auditBy;		// 审核人ID
	private String auditName;		// 审核人
	private Date auditDate;		// 审核时间
	private String createName;		// 创建人
	
	public RefundHeader() {
		super();
	}

	public RefundHeader(String id){
		super(id);
	}

	@Length(min=0, max=30, message="客退单号长度必须介于 0 和 30 之间")
	public String getRefundNo() {
		return refundNo;
	}

	public void setRefundNo(String refundNo) {
		this.refundNo = refundNo;
	}
	
	@Length(min=0, max=50, message="下单账号长度必须介于 0 和 50 之间")
	public String getCustomerAccount() {
		return customerAccount;
	}

	public void setCustomerAccount(String customerAccount) {
		this.customerAccount = customerAccount;
	}
	
	@Length(min=0, max=30, message="客户名称长度必须介于 0 和 30 之间")
	public String getCustomerName() {
		return customerName;
	}

	public void setCustomerName(String customerName) {
		this.customerName = customerName;
	}
	
	@Length(min=0, max=30, message="顾客编号长度必须介于 0 和 30 之间")
	public String getCustomerNo() {
		return customerNo;
	}

	public void setCustomerNo(String customerNo) {
		this.customerNo = customerNo;
	}
	
	@Length(min=0, max=1, message="客退类型长度必须介于 0 和 1 之间")
	public String getBackorderType() {
		return backorderType;
	}

	public void setBackorderType(String backorderType) {
		this.backorderType = backorderType;
	}
	
	@Length(min=0, max=50, message="原订单ID长度必须介于 0 和 50 之间")
	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}
	
	@Length(min=0, max=50, message="原订单号长度必须介于 0 和 50 之间")
	public String getOrderNo() {
		return orderNo;
	}

	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}
	
	@Length(min=0, max=30, message="运单号长度必须介于 0 和 30 之间")
	public String getLogisticNo() {
		return logisticNo;
	}

	public void setLogisticNo(String logisticNo) {
		this.logisticNo = logisticNo;
	}
	
	@Length(min=0, max=255, message="logistic_code长度必须介于 0 和 255 之间")
	public String getLogisticCode() {
		return logisticCode;
	}

	public void setLogisticCode(String logisticCode) {
		this.logisticCode = logisticCode;
	}
	
	@Length(min=0, max=50, message="物流公司长度必须介于 0 和 50 之间")
	public String getLogisticCompany() {
		return logisticCompany;
	}

	public void setLogisticCompany(String logisticCompany) {
		this.logisticCompany = logisticCompany;
	}
	
	@Length(min=0, max=11, message="总件数长度必须介于 0 和 11 之间")
	public String getTotal() {
		return total;
	}

	public void setTotal(String total) {
		this.total = total;
	}
	
	@Length(min=0, max=50, message="退货原因长度必须介于 0 和 50 之间")
	public String getReturnCause() {
		return returnCause;
	}

	public void setReturnCause(String returnCause) {
		this.returnCause = returnCause;
	}
	
	@Length(min=0, max=30, message="退件姓名长度必须介于 0 和 30 之间")
	public String getBackName() {
		return backName;
	}

	public void setBackName(String backName) {
		this.backName = backName;
	}
	
	@Length(min=0, max=30, message="退件电话长度必须介于 0 和 30 之间")
	public String getBackPhone() {
		return backPhone;
	}

	public void setBackPhone(String backPhone) {
		this.backPhone = backPhone;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getArrivalDate() {
		return arrivalDate;
	}

	public void setArrivalDate(Date arrivalDate) {
		this.arrivalDate = arrivalDate;
	}
	
	@Length(min=0, max=1, message="状态长度必须介于 0 和 1 之间")
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@Length(min=0, max=30, message="审核人ID长度必须介于 0 和 30 之间")
	public String getAuditBy() {
		return auditBy;
	}

	public void setAuditBy(String auditBy) {
		this.auditBy = auditBy;
	}
	
	@Length(min=0, max=30, message="审核人长度必须介于 0 和 30 之间")
	public String getAuditName() {
		return auditName;
	}

	public void setAuditName(String auditName) {
		this.auditName = auditName;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getAuditDate() {
		return auditDate;
	}

	public void setAuditDate(Date auditDate) {
		this.auditDate = auditDate;
	}
	
	@Length(min=0, max=30, message="创建人长度必须介于 0 和 30 之间")
	public String getCreateName() {
		return createName;
	}

	public void setCreateName(String createName) {
		this.createName = createName;
	}
	
}